*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}
table{
    border-collapse: collapse;
    table-layout: fixed;
}
.clearfix{
    zoom:1;
}
.clearfix:after{
    content:".";
    display:block;
    width:0;
    height:0;
    visibility:hidden;
    clear: both;
}
.fl{
    float:left;
}
.fr{
    float:right;
}
.date{
    position:relative;
}
.date-check{
    width:180px;
    height:30px;
    line-height:30px;
    border:1px solid #ccc;
    padding:0 5px;
}
.date-list{
    display:none;
    position:absolute;
    top:30px;
    padding-top:10px;
    background: #FED;
    border-radius:5px;
    -webkit-border-radius:5px;
    overflow:hidden;
    border:1px solid;
    border-color:#ccc  #ccc transparent  #ccc;
    z-index: 999;
}
.header{
    margin-bottom:4px;
    padding: 0 5px;
}
.header .fl{
    margin-right:5px;
}
.header .fl,.header .fr{
    cursor:pointer;
}
.header select{
    padding: 2px 0;
    vertical-align:top;
}

.header-right{
    margin-right:8px;
}
.header-left,.header-right{
    border-radius: 50%;
    width: 20px;
    height: 20px;
    text-align: center;
    vertical-align: middle;
    border: 1px solid #ccc;
    line-height: 18px;
}
.today{
    padding:2px 5px;
    border:1px solid #ccc;
    border-radius:5px;
    background:#ccc;
    color:#fff;
    font-size:12px;
    *width:24px;
    *height:16px;
    *line-height:16px;
}
.date-list,.date-list table{
    width:216px;
}

.date-list thead{
    background:#00cdec;
}
.date-list th{
    padding:2px;
    color:#fff;
    border:1px solid #ccc;
    font-size: 14px;
    font-weight: normal;
}
.date-list td{
    border:1px solid #ccc;
    padding:2px 0;
    text-align:center;
    font-size: 12px;
}
.date-list td:hover{
    background:#ccc;
    color:#fff;
}
.date-list td.current{
    background:#00cdec;
    color:#fff;
}

.outer{
    width:400px;
    margin:20px auto;
}
.date1{
    margin-bottom:30px;
}
.date-error .date-check{
    border:1px solid red;
}